<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>03 - 分支语句</title>
</head>

<body>
    <script>
        // 分支语句





        // A. 单条件分支语句
        // ☛ 语法:
        //        if(条件) {
        //            逻辑代码1
        //        }else {
        //            逻辑代码2
        //        }

        // 代码演示:
        // 问题:  根据用户输入性别,提示对应的称呼
        //        男   ===   输出 先生
        //        女   ===   输出 女士
        // 1. 定义一个变量保存用户输入的性别
        let gender = prompt('请输入性别');
        // 2. 对性别的值进行判断
        if (gender == '男') {
            alert('先生你好');
        } else {
            alert('女士你好');
        }





        // B. 多条件分支语句
        // ☛ 语法:
        //        if(条件1) {
        //            逻辑代码1
        //        }else if(条件2) {
        //            逻辑代码2
        //        }else if(条件3) {
        //            逻辑代码3
        //        }else {
        //            逻辑代码4
        //        }

        // 代码演示:
        // 问题:  比较两个数字的大小
        //        变量 a    变量 b
        //        a > b
        //        a < b
        //        a == b
        // 1. 定义两个变量分别接收用户输入的两个数字
        let num1 = Number(prompt('请输入第一个数字'));
        let num2 = Number(prompt('请输入第二个数字'));
        // 2. 比较两个数字大小
        if (num1 > num2) {
            alert('第一个数字大');
        } else if (num1 < num2) {
            alert('第二个数字大');
        } else {
            alert('两个值相等');
        }





        // C. 三元表达式    就是单条件分支语句的简写形式
        // ☛ 语法:  条件 ? 逻辑代码1 : 逻辑代码2;

        // 代码演示:
        // 问题:  用户输入工作年数如果工龄大于1年，年底奖金+2000，否则年底没奖金
        let year = prompt('请输入工龄');
        let money = 0;
        year > 1 ? money += 2000 : money += 0;
        console.log(`工作年限是: ${year} 年 最后的奖金是 ${money} 元`);





        // D. switch语句    就是多条件分支语句的另外一种写法
        // 语法:
        //        switch(变量) {
        //            case 值1:
        //                逻辑代码1
        //            break;
        //            case 值2:
        //                逻辑代码2
        //            break;
        //            default : 
        //                逻辑代码3
        //            break;
        //        }

        // 代码演示:
        // 问题:  根据用户输入数字,显示对应的星期结果
        //        1    === >   星期1
        //        2    === >   星期2
        // 定义变量,保持用户输入的数字
        let week = Number(prompt('请输入对应的天数'));
        switch (week) {
            case 1: // switch 语句中变量的数据类型必须和 case 后面值的数据类型一样
                alert('星期1');
                break;

            case 2:
                alert('星期2');
                break;

            case 3:
                alert('星期3');
                break;

            case 4:
                alert('星期4');
                break;

            default:
                alert('其他日期')
                break;
        }
    </script>
</body>

</html>